import { delToken, getToken, setToken } from '@/utils/storage'

export default {
  // 命名空间
  namespaced: true,
  // 推荐写法
  state () {
    return {
      token: getToken() || ''
    }
  },
  getters: {},
  mutations: {
    // 存储token的同步方法
    // 参数payload: 就是登录成功之后的token
    setUserToken (state, payload) {
      state.token = payload
      // 做token的本地化存储: 避免页面刷新时vuex丢失token
      setToken(payload)
    },
    // 退出登录的同步方法
    logout (state) {
      // 把token设置为空即可
      state.token = null
      // 本地存储的token也必须删除
      delToken()
    }
  },
  actions: {}
}
